.post {
  padding: 0 20px;
  margin-bottom: 1.5em;

  img {
    max-width: 100%;
  }
  
  table {
    border-collapse: collapse;
    border-spacing: 0;

    td, th {
      padding: 6px 13px;
      border: 1px solid #dfe2e5;
    }
  }

  hr {
    margin: 1.5em 0;
  }

  .post-content {
    text-align: justify;
    
    a {
      border-bottom: 1px dotted;

      &:hover {
        border-bottom: 1px solid;
      }
    }

    ul, ol {
      text-align: left;

      li {
        padding: 5px;
        line-height: 1.5em;
      }
    }
  }

  figure {
    margin: 0;
    table {
      width: 100%;
      
      .code {
        border: 0;
        padding: 0;
      }
    }

    .gutter {
      display: none;
    }
  }

  blockquote {
    margin: 0;
    padding: 0 15px;
    color: #777;
    border-left: 4px solid #ddd;
  }

  pre {
    font-family: initial;
    margin: 0;
    padding: 0.5em 1.5em;
    overflow: auto;
    font-size: 85%;
    line-height: 1.8;
    background-color: #f7f7f7;
    border: 1px solid #ccc;
  }

  code {
    background: #f7f7f7;
    border: 1px solid #d6d6d6;
    font-family: inherit;
    font-size: 90%;
    margin: 5px;
    padding: 0 5px;
  }

  p {
    line-height: 1.5em;
  }

  .post-footer {
    line-height: 1;
    min-height: 1em;

    .top {
      float: right;
      color: #666;

      &:hover {
        color: #000;
      }
    }

    .post-tag-list {
      display: inline-block;
      padding: 0;
      margin: 0 0 0.5em 0;
      color: #999;

      .post-tag-list-item {
        display: inline-block;
        margin: 0 1em 0 0;

        a {
          font-size: 85%;
        }

        &:before {
          content: '#';
        }

      }
    }
  }
}
